Method and system for distributing art

ABSTRACT

An art distribution system for distributing art to multiple display devices within an environment. The art distribution system provides a technique for specifying images to be displayed in an environment. The art distribution system provides a hierarchical representation of spaces within the environment. Each space may be further subdivided into subspaces. The art distribution system allows a user to select a space within the hierarchy and then to select an image that is to be displayed at the display devices within the selected space. The art distribution system then displays the selected image within the space including within all subspaces of the selected space. The art distribution system may allow a subsequent assignment of the image to a subspace to override within that subspace the previous selection of an image for the space.

RELATED APPLICATIONS

[0001] This application is a divisional of U.S. patent application Ser. No. 09/322,207, entitled “METHOD AND SYSTEM FOR DISTRIBUTING ART,” filed on May 28, 1999, which claims benefit of U.S. Patent Application No. 60/118,668, entitled “COMMON DISTRIBUTED OBJECT PLATFORM,” filed on Feb. 3, 1999 the disclosures of which are incorporated herein by reference.

[0002] This application is also related to U.S. patent application Ser. No.09/322,455, entitled “METHOD AND SYSTEM FOR TRACKING SOFTWARE COMPONENTS,” filed on May 28, 1999; U.S. patent application Ser. No. 09/322,962, entitled “METHOD AND SYSTEM FOR TRACKING CLIENTS,” filed on May 28, 1999; U.S. patent application Ser. No. 09/322,643, entitled “AUDIO VISUAL ARCHITECTURE,” filed on May 28, 1999; U.S. patent application Ser. No. 09/322,459, entitled “METHOD AND SYSTEM FOR CONTROLLING ENVIRONMENTAL CONDITIONS,” filed on May 28, 1999; U.S. patent application Ser. No. 09/322,965, entitled “METHOD AND SYSTEM FOR IMPLEMENTING VIRTUAL FUNCTIONS OF AN INTERFACE,” filed on May 28, 1999; U.S. patent application Ser. No. 09/322,964, entitled “METHOD AND SYSTEM FOR GENERATING A USER INTERFACE FOR DISTRIBUTED DEVICES,” filed May 28, 1999; U.S. patent application Ser. No. 09/322,852, entitled “METHOD AND SYSTEM FOR MANAGING SOFTWARE COMPONENTS,” filed on May 28, 1999; and U.S. patent application Ser. No. 09/322,457, entitled “METHOD AND SYSTEM FOR PROPERTY NOTIFICATION,” filed on May 28, 1999, the disclosures of which are incorporated herein by reference.

[0003] 1. Field of the Invention

[0004] The described technology relates generally to a computer system for displaying art and, more particularly, to a system that displays electronic images in a distributed environment.

[0005] 2. Background of the Invention

[0006] Prior to the electronic imaging of art, each artwork could only be displayed at one location. If a copy of the artwork was made, then those copies could be displayed at additional locations. With the advent of electronic imaging of art, electronic images could be displayed at multiple locations using multiple computer displays, in addition, the artwork that is displayed at a computer display can be changed automatically at periodic intervals for one artwork to the next. A play list of images can be defined. The computer system that processes the play list displays each image in sequence at periodic intervals. In environments such as museums, a central computer system may control the displaying of a play list at various display devices throughout the museum. The central computer system may maintain a database of the images, and the museum administrator can define play lists and can specify on which display devices are the images of the play lists to be displayed. Such techniques for displaying art may be acceptable for museums, but may be unacceptable in other environments. The techniques may be acceptable in a museum because only the administrator from a central location defines the play lists and specifies the display devices at which the play lists are to be displayed and because each image that can possibly be displayed needs to be stored at the central computer system before it is assigned to a play list.

[0007] In other environments, such as a large house or an office building, it may be desirable to allow users to control the display of images from input devices throughout the environment. In addition, it would be desirable if the images that can be assigned to a play list were not limited to those currently stored at the computer system. Finally, it would be desirable if an image is automatically made available for inclusion in play lists when the computer system detects that the image satisfies user-specified criteria and that the bitmap for the image is now accessible and can be downloaded to the computer system.

SUMMARY OF THE INVENTION

[0008] An art distribution system for distributing art to multiple display devices within an environment is provided. The art distribution system provides a technique for specifying images to be displayed in an environment. The art distribution system provides a hierarchical representation of spaces within the environment. Each space may be further subdivided into subspaces. The art distribution system allows a user to select a space within the hierarchy and then to select an image that is to be displayed at the display devices within the selected space. The art distribution system then displays the selected image within the space including within all subspaces of the selected space. The art distribution system may allow a subsequent assignment of the image to a subspace to override within that subspace the previous selection of an image for the space. The image to be displayed may be part of a play list of images.

[0009] The art distribution system also provides for the downloading of images in a background mode from a remote image storage device. The art distribution system provides an image administration module that allows a user to identify images that are to be included in a play list. The image administration module then sends the identity of those images to an art server. Upon receiving the identity of those images, the art server determines whether the bitmaps for those images have already been stored at the art server. If a bitmap for an image has not already been stored, then the art distribution system requests that the image be downloaded from an image storage device to the art server.

[0010] The art distribution system also allows a user to specify that image information for accessible images that match specified criteria should be downloaded when those images become accessible. The art distribution system periodically transmits the criteria to image storage devices. The image storage devices identify those images that satisfy the criteria and then provides those identifications to the art distribution system. The art distribution system stores information describing those images so that a user can subsequently select those images to be included in a play list. The bitmap for an image can then be retrieved after the image is assigned to a play list.

[0011] The art distribution system also allows for a user to specify the play list that is to be displayed on a display device from a user control point device that may be located in the same room as the display device. The art distribution system provides a user interface at a user control point device to which a user can specify the play list for a certain space. In this way, the users can control the play list assignments from distributed locations.

BRIEF DESCRIPTION OF THE DRAWINGS

[0012]FIG. 1 illustrates a displaying of an image along with image information.

[0013]FIG. 2 illustrates the display of a user control point device for specifying a play list for a certain space.

[0014]FIG. 3 illustrates a user interface for managing the play lists.

[0015]FIG. 4 illustrates a user interface for assigning a play list to a particular space.

[0016]FIG. 5 illustrates a user interface for submitting a query for making images available to be put in a play list when images satisfying the query become available.

[0017]FIG. 6 is a block diagram of the components of the art distribution system in one embodiment.

[0018]FIG. 7 is a block diagram illustrating the components of the art server in one embodiment.

[0019]FIG. 8 is a block diagram illustrating components of an art administration application in one embodiment.

[0020]FIG. 9 is a block diagram illustrating components of an art space controller in one embodiment.

[0021]FIG. 10 is a flow diagram of the art administration controller.

[0022]FIG. 11 is a flow diagram of the manage play list function of the art administration application.

[0023]FIG. 12 is a flow diagram of the assign play list to space function.

[0024]FIG. 13 is a flow diagram of the retrieve image identifier function of the art server.

[0025]FIG. 14 is a flow diagram of the get images function of the art server.

[0026]FIG. 15 is a flow diagram of the art space controller interface function.

[0027]FIG. 16 is a flow diagram of the processing of receiving events at an art component interface module.

[0028]FIG. 17 is a flow diagram of the processing of an art display module.

[0029]FIG. 18 is a flow diagram of the art user interface module.

DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS

[0030] A method and system for distributing images throughout an environment is provided. The art distribution system allows a user to specify play lists of images and to specify display devices at which the images of the play lists are to be displayed. The art distribution system maintains a database of the images that are specified in the play lists. The environment in which the art distribution system displays images is hierarchically organized into spaces and subspaces. For example, if the environment is a large house, then the spaces may be the east wing and west wing of the house, the subspaces of the east wing may be the bedrooms and the kitchen, and the subspaces of the bedrooms may be the master bedroom, the guest bedroom, and so on. Each space within the hierarchy may have one or more display devices within it. For example, the master bedroom may have several display devices that are capable of displaying art images. The art distribution system allows a user to specify that a play list is to be displayed at any level in the hierarchy. For example, a user may specify that a certain play list is to be displayed throughout the east wing of the house, and the art distribution system will display that play list at every display device within the east wing. If a user then specifies that a subspace of the east wing, such as the master bedroom, is to display another play list, then the art distribution system will display that other play list at all display devices within the master bedroom. The art distribution system will, however, continue to display the original display list within the other spaces of the east wing. The art distribution system may also include a non-override mode in which the specifying of a play list for a space will not override a play list that has the specifically specified for a subspace. For example, if a new play list is specified for the east wing, that play list will be display throughout the east wing except within the master bedroom because the master bedroom was specifically assigned a master play list.

[0031] The art distribution system allows a user from within any space to control the play list that is currently being displayed within that space. Each space may have a user control point devices, such as a touch panel display, within it. A user can specify a play list to be displayed within the space using the user control point device. Thus, the art distribution system can be controlled from distributed locations rather than from only a central location. The display devices may also display image information in response to a user request. For example, if the display device is a touch panel display, then when a user touches the panel, the art distribution system displays information relating to the image currently being displayed. The information may include the name of the artist, the country of the artist, and the year in which the art was generated.

[0032] The art distribution system may also allow for images to be retrieved in a background mode and allow information on images to be retrieved as the images become accessible. The art distribution system provides a user interface through which a user can define, delete, and modify play lists. The art distribution system may display the names of the images, information relating to the image, and possibly even a thumbnail representation of the images to assist the user in defining a play list. If the art distribution system does not already have an electronic copy (e.g., a bitmap) of the full-sized image, then the art distribution system queues a request to download the image. A download module of the art distribution system is responsible for retrieving a copy of the image in a background mode and storing it in the image database of the art distribution system. In addition, a user can define criteria for images of interest. For example, the user may specify an interest in images of a certain artist. As new images of that artists become accessible, the art distribution system automatically retrieves information relating to those new images. In this way, a user can be made aware of certain classes of images as they become electronically accessible to the art distribution system. The art distribution system can retrieve information.

[0033] FIGS. 1-5 illustrate portions of the user interface of the art distribution system in one embodiment. FIG. 1 illustrates a displaying of an image along with image information. The display device 100 displays the images of a play list under control of the art distribution system. The display device is currently displaying an image of a sail boat. When a user performs a specified action (e.g., touches a touch screen display or click a mouse button), the art distribution system displays a pop-up window 101 that contains information relating to the image currently being displayed. The information may include the name of the artist, the year in which the artist created the work, and so on. That pop-up window may be displayed for a predefined time interval or until user performs another action. FIG. 2 illustrates the display of a user control point device for specifying a play list for a certain space. The user control point device 200 is currently displaying an art play list panel 201. The art play list panel indicates that the current play list for the master bedroom is play list 10. The art play list panel also includes a scroll box 202 that contains a list of play lists that can be specified for the master bedroom. The user selects the desired play list from the scroll box. The art play list panel also contains a select space button 203. The art distribution system may allow the user to control the play list for other spaces from the current space (i.e., the master bedroom). When the user selects the select space button, the art distribution system displays a list of the spaces that can be controlled from the current space. When the user selects one of those spaces, then the art distribution system displays a panel similar to that shown in FIG. 2 for that other space.

[0034]FIG. 3 illustrates a user interface for managing the play lists. The art distribution system allows a user to create and modify play lists. One skilled in the art will appreciate that many different user interfaces can be used for specifying play lists. The display 300 includes an art play list name drop-down list 301, an art play list scroll box 302, and an art available scroll box 303. The display also includes an add button 304, a remove button 305, a done button 306, and a cancel button 307. A user can either create a new play list or modify an existing play list using this user interface. To create a new play list, the user enters the name of the play list in the art play list name field portion of the drop-down list. The user then selects the art to be added to the play list from the art available scroll box. The user then selects the add button to add that art to the art play list. The art play list scroll box lists the images that are currently in the selected play list. To remove art from the art play list, the user selects the art from the art play list scroll box and then selects the remove button. To modify an existing play list, the user selects the play list using the art play list name list box to select the play list. In response, the art distribution system displays the images of the play list in the art play list scroll box. The user can then add, remove, and reorder the images of the play list and delete the play list itself.

[0035]FIG. 4 illustrates a user interface for assigning a play list to a particular space. The display 400 includes a space hierarchy window 401, a play list scroll box 402, an assignment button 403, and a done button 404. The space hierarchy window displays the space hierarchy for the environment in which the art distribution system is controlling. In this example, the environment is a house and the spaces include an east wing and west wing, the east wing includes a bedroom subspace, and so on. This hierarchy can be displayed in a manner similar to the well-known techniques for displaying a file system directory hierarchy. The art play list currently being displayed in each space is indicated in parentheses after the is name in the space. For example, the bedrooms space is currently displaying art play list 10 and the subspaces master bedroom and child1 are also displaying art play list 10 because no play list was specifically specified for those spaces. The subspace child2 is displaying play list 1. A users assigns a play list to a space by selecting a play list from the play list scroll box, by selecting a space from the space hierarchy window, and by then selecting the assign button. The art distribution system then directs each device within that space to start displaying the play list.

[0036]FIG. 5 illustrates a user interface for submitting a query for making images available to be put in a play list when images satisfying the query become available. In one embodiment, a query is associated with a play list, and when images that satisfy the query become accessible, they are automatically downloaded and added to the play list. The display 500 includes a current query scroll box 501, a query name field 502, and a query field 503. The display also includes a submit button 504 and a cancel button 505. To generate a new query, the user enters the name of the query in the query name field and then enters the query itself into the query field. One skilled in the art will appreciate that any well-known query specification technique can be used to define the query (e.g., SQL). To modify a query a user selects a current query from the current query scroll box. In response to the selection, the art distribution system displays the name and that query in the query name field and the query itself in the query field. When a user submits a new query or a modified query by pressing the submit button, the art distribution system starts a process of periodically checking to see if any new images are accessible to the art distribution system that satisfy that query.

[0037]FIG. 6 is a block diagram of the components of the art distribution system in one embodiment. The art distribution system may be implemented in software and may execute on a computer system with a control processing unit, memory, and input/output devices. The software and data structures may be stored in a computer-readable medium such as a memory, CD-ROM, or disk and may be transmitted over a computer-readable data transmission medium such as the Internet. The art distribution system includes an art server 601, an art administration application 602, art space controllers 603, display devices 605, and user control point devices 606. The art server is connected to the art space controllers via communications channel 607, which may be a logical channel when various components execute on the same computer system. The art server communicates via communications channel 608 (e.g., the Internet) to an art mass storage device. The art mass storage device includes images and image information for accessible images. The art server includes a database of the bitmaps for the images that are currently specified in a play list. The art administration application allows a user to define play lists and submit queries. The art space controllers are assigned play lists and control the display of the play list on the display devices and control the user interface of the user control point devices.

[0038]FIG. 7 is a block diagram illustrating the components of the art server in one embodiment. The art server includes a spatial hierarchy table 701, a play list database 702, an image database 703, a space/play list assignment table 704, an image identifier table 705, and a new image table 706. The art server also includes an art server controller 707, an art mass storage interface 708, an art administration interface 709, and an art space controller interface 710. The spatial hierarchy table contains information describing the hierarchical organization of spaces within the environment controlled by the art server. The play list database contains the name of each play list that has been defined along with the identifiers of the images within the play list. Each play list may also have to a user-specified time associated with it that indicates the length of time each image in the play list is to be displayed. The image database contains the bitmap image of the images that have been defined in a play list. The space/play list assignment table contains the identification of each play list that is currently assigned to a space. For example, the master bedroom may be assigned play list 10. The image identifier table contains the identifier of images that are available to be included in a play list. The image identifier table may also include information describing the image including a thumbnail bitmap of the image to assist the user in determining whether that image should be included in a play list. The new image table contains a list of images that have been recently included in a play list and whose bitmaps need to be downloaded from the mass storage device. The art server controller controls the overall operation of the art server. This includes controlling the interface with the art administration application, responding to requests from the art space controllers, notifying the art space controllers of play list changes, and controlling the art mass storage interface. The art mass storage interface processes the new image table to retrieve the images that have been recently included in a play list. The art mass storage interface also periodically submits the queries to the art mass storage device to determine if any new images are accessible that satisfy the queries. The queries may be stored in a query table (not shown). The art administration interface serves as the interface between the art server and the art administration application. The art space controller interface serves as the interface between the art server and the art space controllers. When transmitting images to the art displays, the art server may spread the transmission over almost the entire time interval during which an image is displayed. For example, if an image is displayed for 60 seconds, then the art server may send {fraction (1/60)}^(th) of the next image every second. This allows the next image to be retrieved while the current image is displayed without overloading the communications channel with a burst of transmitted data.

[0039]FIG. 8 is a block diagram illustrating components of the art administration application in one embodiment. The art administration application includes an art administration controller 801, an art server interface 802, a manage play list component 803, an assign play list component 804, and a submit query component 805. The art administration application interfaces with I/O devices 806, such as a keyboard and display, and interfaces with an art input device, such as an image scanner. The art administration controller controls the selection of whether the user wants to manage the play list, assign a play list to a space, or submit a query. The art server interface provides the interface from the art administration application to the art server.

[0040]FIG. 9 is a block diagram illustrating components of an art space controller in one embodiment. The art space controller includes art display modules 901, an art component interface module 902, and art user interface modules 903. The art display modules are assigned a play list and loop through that play list retrieving the images from the art server and displaying the images on the associated display devices. The art component interface module provides the art display modules with the indication of the art display list that they are to display. The art user interface modules provide a user interface at a user control point device for selecting a play list that is to be displayed within the space.

[0041] In one embodiment, the art distribution system provides an accounting package that monitors the display of images and provides an accounting to the providers of the images. The accounting package may base the accounting for an image on how long the image has been stored at the art distribution system, the total time the image has been displayed, how many times the image has been displayed and so on. The accounting package keeps track of these statistics so that the providers can be paid accordingly. The accounting package may have a provider table that specifies how the accounting is to be performed for each provider and provides other provider-specific information, such as payment method, payment history, and so on. The image information associated with each image may include cost information and licensing restrictions related to that image. A user of the art distribution system may decide to include images in a play list based on the cost of the image. The query mechanism of the art distribution system may also take cost into consideration. For example, a query may have a maximum cost associated with it. Any image with a cost greater than that maximum cost would not satisfy the query. Alternatively, if an image would otherwise satisfy the query, the query mechanism may notify the user that an image that satisfies the query is accessible, but that its cost is more than the maximum cost. Upon receiving the notification, the user can then specify whether the image should be downloaded. To minimize the cost of images and reduce the storage space that is required, the art distribution system may automatically delete images when they are no longer included in a play list. Alternatively, the art distribution system may delay the automatic deletion for a certain period of time to allow the adding of the image to another play list without having to re-download the image.

[0042] FIGS. 10-18 are flow diagrams illustrating example processing of components of the art distribution system in one embodiment. FIG. 10 is a flow diagram of the art administration controller. The art administration controller allows the user to select which action to perform relating to the administration of the play lists. In step in 1001, the controller waits for input from the user. In step 1002, if the user selected to manage a play list, then the controller continues at step 1003, else the controller continues at step 1004. In step 1003, the controller invokes a function to control the managing of the play list. In step 1004, if the user selected to assign to play list to a space, then the controller continues at step 1005, else the controller continues at step 1006. In step 1005, the controller invokes the function to assign a play list to a space. In step 1006, if the user selected to a load images from an input device, such as a scanner, then the controller continues at step 1007, else the controller continues at step 1008. In step 1007, the controller inputs an image and provides it to the art server for storage in the image database. The user may also enter information describing the image. In step 1008, if the user selected to submit a query, then the controller continues at step 1009, else the controller loops to step 1001 to wait for user input. In step 1009, the controller invokes a function to submit a query.

[0043]FIG. 11 is a flow diagram of the manage play list function of the art administration application. This function displays the user interface corresponding to FIG. 3. In step 1101, the function retrieves information for the available art from the art server. In step 1102, the function displays the art management user interface. In step 1103, if the user selects to modify an existing play list, then the function continues at step 1104, else the function continues at step 11 05. In step 1104, the function retrieves the old play list from the art server. In step 1105, the function updates the art management user interface to reflect the old play list. In step 1106, the function receives revisions to the play list from the user. In step 1107, the function sends the revised play list to the art server and returns.

[0044]FIG. 12 is a flow diagram of the assign play list to space function. The function displays the user interface corresponding to FIG. 4. In step 1201, the function retrieves the currently defined play lists from the art server. In step 1202, the function retrieves the space hierarchy from the art server. In step to 1203, the function retrieves the space/play list assignments from the art server. In step 1204, the function generates the display based on the retrieve data. In step 1205, the function receives user input of the assignment of a play list to a space. In step 1206, the function sends the space/play list assignment to the art server and then returns.

[0045]FIG. 13 is a flow diagram of the retrieve image identifier function of the art server. This function is a part of the art mass storage interface. This function determines whether images that satisfy the queries are now accessible. In step 1301, the function selects the next query. In step 1302, if all the queries have already been selected, then the function continues at step 1303, else the function continues at step 1304. In step 1303, the function goes to sleep until the specified interval at which it is to next check for accessible images. The function then loops to step 1301 to process the queries. In step 1304, the function sends the query request to the mass storage device. In step 1305, the function receives the response to the query request. The sending and receiving of query requests and responses may be over the Internet and may use the hypertext transfer protocol (“HTTP”). In step 1306, the function updates the image identifier table with image information for images that are not already stored in the image identifier table. In step 1307, the function adds an entry to the new image table so that the image can be downloaded. The function then loops to step 1301 to select next query.

[0046]FIG. 14 is a flow diagram of the get images function of the art server. The get images function is part of the art mass storage interface. This function processes the image identifiers that have been stored in the new image table and retrieves the corresponding image. In step 1401, the function retrieves the next image identifier, if any, from the new image table. In step 1402, if all the image identifiers have already been selected, then the function loops to step 1401, else the function continues at step 1403. In step 1403, if the image for the selected image indentifier is already in the image database, then the function continues at step 1407, else the function continues at step 1404. In step 1404, the function requests the image from the mass storage device. In step 1405, the function receives the image. In step 1406, the function stores the image in the image database. In step 1407, the function removes the selected image identifier from the new image table and loops to step 1401 to select the next image.

[0047]FIG. 15 is a flow diagram of the art space controller interface function. This function identifies various conditions and sends event notifications to the art space controllers. In particular, the function identifies when a user has assigned a new play list to a space, identifies when a play list has been added or deleted, and identifies when a play list has been changed. In step 1501, if a new assignment has been made to a space, then the function sends an assignment event in step 1502, else the function continues at step 1503. In step 1503, if a play list has been added or deleted, then the function sends a play list modified event in step 1504, else the function continues at step 1505. In step 1505, if the play list has been changed, then the function sends a play list change event in step 1506, else the function completes.

[0048]FIG. 16 is a flow diagram of the processing of receiving events at an art component interface module. In step 1601, if an assignment event is received, then the function notifies the art display modules in step 1602, else the function continues at step 1603. In step 1603, if a change play list event is received, then the function notifies the art display modules in step 1604, else the function returns.

[0049]FIG. 17 is a flow diagram of the processing of an art display module. The art display module overlaps the displaying of an image with retrieving from the art server of the next image to be displayed. The module continually displays the images in the play list by displaying the first image in the play list after the last image is displayed. The art display module is provided with a display list. In step 1701, the module selects the first image in the display list. In step 1702, the module retrieves the selected image from the art server. In steps 1703-1707, the module loops displaying the images in the play list at the specified intervals. In step 1703, the module displays the last retrieved image. In step 1704, the module selects the next image in the display list. In step 1705, the module retrieves the selected image from the art server. In step 1705, the modules pauses for the requisite interval or until a user touches the panel. In step 1706, if the user touches the panel, then the module continues at step 1707, else the module loops to step 1703 to select and display the last retrieve image. In step 1707, the function displays the information relating to the current image and then loops to step 1705 to pause. The display of the information corresponds to FIG. 1. In one embodiment, the module may cache the images so that each image of a play list only needs to be retrieved once.

[0050]FIG. 18 is a flow diagram of the art user interface module. This module controls the user interface of FIG. 2. In step 1801, the module retrieves the assigned play lists from the art server. In step 1802, the module displays the user interface for the user control point device. In step 1803, if the user indicated to assign a new play list the space, then the module continues at step 1804, else the module returns. In step 1804, the module notifies the art server to change the play list assignment for the space. The art server then sends out an event to notify the art space controllers that the play list has changed.

[0051] Although specific embodiments of, and examples for, the describe technology are presented for illustrative purposes, is not intended that the invention be limited to these embodiments. Equivalent methods, structures, processes, steps, and other modifications within the spirit of the invention are within the scope of the invention. For example, one skilled in the art will appreciate that the mass storage device may be a single storage device or multiple storage devices the may be provided by different vendors of images. Also, an image storage device may be provided with queries that then asynchronously notifies the art distribution system when images that satisfy the query become accessible. In this way, the art distribution system conceptually has “agents” working on its behalf. In one embodiment, the image storage device may be local to the art distribution system or some images may be stored in a local image storage device and others may be stored in a remote image storage device. The images may also be stored in formats other then a bitmap format. For example, the images may be stored using vector graphics. In one embodiment, the spatial hierarchy may not be related to the hierarchical arrangement of physical spaces in the environment. For example, the spatial hierarchy may group all bedrooms together even though the bedrooms may not be adjacent spaces. The art distribution system may also allow for multiple hierarchies to be defined to represent the spaces in the environment. A user can select the hierarchy of interest when assigning play lists. An art distribution system may be implemented using the techniques and facilities described in U.S. patent applications entitled “Method and System for Tracking Software Components.” Accordingly, the invention is not limited to the specific embodiments, but instead the scope invention is specified by the following claims. 

What is claimed:
 1. A method in a computer system for applying an effect to a physical environment, the environment having a plurality of spaces, comprising: grouping the plurality of spaces into a plurality of groups; determining a group of spaces from the plurality of groups; determining an effect to be applied to the determined group; and causing the determined effect to be applied to the spaces of the determined group such that the effect is applied to each space belonging to the group.
 2. The method of claim 1 wherein the effect is the controlling of environmental conditions, such that causing the effect to be applied to the spaces of the determined group controls the environmental conditions of all of the spaces belonging to the determined group.
 3. The method of claim 2 wherein the effect is displaying an image on a display device.
 4. The method of claim 2 wherein the acts of determining an effect is capable of being performed from at least one of the plurality of spaces.
 5. The method of claim 3 wherein the image is an electronic art image.
 6. The method of claim 3 wherein the image is one of a plurality of images that are displayed in sequence at periodic intervals.
 7. The method of claim 1 wherein the spaces are rooms in building.
 8. The method of claim 1 comprising determining a second group of spaces from the plurality of groups and determining a second effect to be applied to the second group of spaces.
 9. A data signal transmitted over a computer-readable data transmission medium containing instructions for controlling a computer system to apply effects to a physical environment, the environment having a plurality of spaces, by: grouping the plurality of spaces into a plurality of groups; determining a group of spaces from the plurality of groups; determining an effect to be applied to the determined group; and causing the determined effect to be applied to the spaces of the determined group such that the effect is applied to each space belonging to the group.
 10. The data signal of claim 9 wherein the effect is the controlling of environmental conditions, such that causing the effect to be applied to the spaces of the determined group controls the environmental conditions of all of the spaces belonging to the determined group.
 11. The data signal of claim 9 wherein the effect is displaying an image.
 12. The data signal of claim 9 wherein the computer-readable data transmission medium is a network.
 13. The data signal of claim 12 wherein the computer-readable data transmission medium is the internet.
 14. A system for applying effects to a physical environment having a plurality of physical spaces, comprising: a computer having a plurality of computer-readable instructions for providing a plurality of logical groups where each logical group corresponds to a plurality of the physical spaces of computer readable instructions capable of executing on the computer for selecting one of the logical groups; a plurality of computer readable instructions capable of executing on the computer for selecting an effect to be applied to the selected logical group; an interface capable of transmitting a signal indicative of the physical effect to computing devices associated with each physical space in the logical group so that the computing device may cause the effect to be applied to the physical space.
 15. The system of claim 14 wherein the effect is the controlling of environmental conditions, such that causing the effect to be applied to the spaces of the determined group controls the environmental conditions of all of the spaces belonging to the determined group.
 16. The system of claim 15 wherein the effect is displaying an image on a display device associate with each computing device.
 17. The system of claim 15 wherein the an effect is capable of being selected by a transmission from at least one of the computing devices.
 18. The system of claim 16 wherein the image is an electronic art image.
 19. The system of claim 16 wherein the image is one of a plurality of images that are capable of being displayed in sequence at periodic intervals.
 20. The system of claim 14 wherein the spaces are rooms in building.
 21. The system of claim 14 comprising a plurality of computer readable instruction capable of executing on the computer for selecting a second one of the logical groups from the plurality of logical groups; and a plurality of computer readable instruction capable of executing on the computer for selecting a second effect to be applied to the second group of spaces. 